package nyist.media.controller;

import nyist.media.entity.admin.Admin;
import nyist.media.page.ApiResult;
import nyist.media.page.AppPage;
import nyist.media.service.AdminService;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;
import java.util.Map;

/**
 * 基类控制器
 *
 * @author : dcf
 * @date : 2019/3/13
 */
public abstract class BaseController {

    @Autowired
    private AdminService adminService;

    /**
     * 返回分页数据信息
     * @param appPage 对象
     * @return 数据信息
     */
    public Map<String, Object> toResultPage(AppPage appPage) {
        return ApiResult.SUCCESS.getMap().add("count", appPage.getTotalNum()).add("data", appPage.getData());
    }

    /**
     * 返回列表数据
     * @param list 数据对象
     * @return 数据信息
     */
    public Map<String, Object> toResultList(List list) {
        return ApiResult.SUCCESS.getMap().add("data", list).add("count", list.size());
    }

    /**
     * 获取当前登录对象
     * @return 当前登录对象
     */
    public Admin getCurrentInfo() {
        return adminService.getCurrent();
    }

}

